body {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    background-color: #dcf3f3;
}

.overall {
    background-color: #e3e7f1;
    --button-width: 80px;
    --button-height: 80px;
    box-shadow: -8px -8px 16px -10px rgba(255, 255, 255, 1), 8px 8px 16px -10px rgba(0, 0, 0, .9);
    padding: 44px 24px 24px 24px;
    border-radius: 20px;
    display: grid;
    grid-template-areas: "result result result result" "AC plus-minus percent divide" "num-7 num-8 num-9 multiply" "num-4 num-5 num-6 subtract" "num-1 num-2 num-3 add" "num-0 num-0 dot equal";
    grid-template-columns: repeat(4, var(--button-width));
    grid-template-rows: repeat(6, var(--button-height));
}

/* æŒ‰é’® */

.overall button {
    display: block;
    outline: none;
    border-radius: calc(var(--button-height)/3);
    font-size: 24px;
    font-family: Helvetica;
    font-weight: normal;
    margin: 10px;
    padding: 0;
    border: 0;
    color: rgb(66, 85, 105);
    background: linear-gradient(135deg, rgb(177, 202, 219)0%, rgba(246, 246, 246, 1)100%);
    box-shadow: -4px -4px 10px -8px rgba(255, 255, 255, 1), 4px 4px 10px -8px rgba(0, 0, 0, .9);
}

.overall button:active {
    box-shadow: -4px -4px 10px -8px rgba(255, 255, 255, 1) inset, 4px 4px 10px -8px rgba(0, 0, 0, .9) inset;
    transition: .9s;
}

.output {
    width: 310px;
    height: 65px;
    text-align: right;
    line-height: 65px;
    font-size: 28px;
    font-family: Helvetica;
    color: #070a3d;
    background-color: rgb(224, 224, 224);
    border-radius: 15px;
    padding: 0 10px 0 0;
    margin-bottom: 10px;
}